home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / NEW / Q-Quantum Link / (n)q2.d64 / raster-int.arc / RASTER INT.TXT < prev   
Text File  |  2007-02-25  |  2KB  |  73 lines

  1. ********************************
  2. *áááááááááááááááááááááááááááááá*
  3. *árASTERáiNTERRUPTááááááááááááá*
  4. *átAKEá4ááá=>áfINALávERSIONá<=á*áoRIGINALáaUTHOR:áwIZZákIDD
  5. *ámYáTHANKSáTOájIMábUTTERFIELDá*
  6. *áFORáALLáHISáTIMEáANDáINFOR-áá*átHISáISáp.d.áSOFTWAREáANDáIS
  7. *áMATIONáTHATáMADEáTHISáááááááá*áOKáTOáEDITáFORáYOURáOWNáNEEDS.
  8. *áINTERRUPTáPOSSIBLE.áááááááááá*
  9. *áááááááááááááááááááááááááááááá*
  10. ********************************
  11.  
  12.  org 49152
  13.  
  14. raster = 53266
  15. hiraster = 53265
  16. vicirq = 53273
  17. irqmask = 53274
  18. irqvect = 788
  19. vector = 251
  20. border = 53280
  21. backrd = 53281
  22. timer = 56333
  23.  
  24. enable lda irqvect ;tHESEáFOURáLINESáCOPYáTHEáOLDáIRQVECTáTOáRAM
  25.  sta vector ;FORáLATERáUSE
  26.  lda irqvect+1
  27.  sta vector+1
  28.  sei  ;sETSáTHEáINTERRUPTáTIMERáSOáWEáCANáCHANGEáTHE
  29.  lda #<intcode ;áirqáVECTORáTOáLEADáTOáTHEáINTERRUPTáBELOWá(intcode)
  30.  sta irqvect
  31.  lda #>intcode
  32.  sta irqvect+1
  33.  lda #0 ;tHESEáTWOáLINESáTELLáTHEáRASTERáCOMPAREáREGISTER
  34.  sta raster ;áWHEREáTOáSTARTáINTERRUPTINGá(lINEá#0)
  35.  lda irqmask ;irqmaskáISáTHEáSAMEáASáTHEáINTERRUPTáENABLE
  36.  ora #1 ;áREGISTER.ááirqmaskáISáj.bUTTERFIELDSáNAMEáFORáIT.
  37.  sta irqmask ;tHEá3áLINESáABOVEáAREáENABLINGáTHEárASTácOMPAREáirq.
  38.  lda #127
  39.  sta timer ;tURNáOFFáTIMERáFORáAáSMOOTHERáRASTERáINTERRUPT
  40.  cli  ;tURNáONáTHEáINTERRUPTáAGAIN.
  41.  rts
  42.  
  43. intcode lda raster ;tHESEáTWOáLINESáCHECKáTOáSEEáWHEREáTHEárASTERáIS.
  44.  cmp line
  45.  beq bottom ;bOTTOMáOFáTHEáSCREEN?
  46. top ldx topcolor ;nOPE,ásETUPárEGá.xáFORánEXTácOLOR,áANDá.yáFOR
  47.  ldy line ;nEXTáLINE
  48.  jmp change
  49. bottom ldx botcolor ;yUP,áSOáCHANGEá.xáTOáBOTTOMáCOLOR,áANDá.yáTOáWHERE
  50.  ldy #10 ;áTHEáNEXTáINTERRUPTáWILLáSTRIKE.
  51. change stx border ;sTOREácOLOR,áWHATEVERáITáIS,áTOáBORDERáANDáBACKROUND
  52.  stx backrd
  53.  sty raster ;sTOREáTHEáNEXTáINTERRUPTáLINEáINTOáRASTERáCOMPARE.
  54.  lda hiraster
  55.  and #127
  56.  sta hiraster
  57.  lda #1 ;cLEARáTHEáLATCHáATáTHEáINTERRUPTáSTATUSáREGISTERáSO
  58.  sta vicirq ;áWON'TáJUSTáCOMEáBACK.
  59.  lda timer ;cHECKáIFáSYSTEMáCLOCKáISáREADYáYET.
  60.  and #253
  61.  bne jiffy ;yUP,áGOTOáTIMERáROUTINE.
  62.  pla  ;(nEXTá6áLINES)árESTOREárEGISTERS.
  63.  tay
  64.  pla
  65.  tax
  66.  pla
  67.  rti  ;bACKáTOáWHEREáITáCAMEáFROM.
  68. jiffy jmp vector ;lETáSYSTEMáTIMERá(ORáOTHERáINTERRUPT)áHAVEáAáCHANCE.
  69.  
  70. line dfb 146
  71. topcolor dfb 4
  72. botcolor dfb 7
  73.